﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using Class_BUS;
using Class_DTO;

using System.Windows.Forms;

namespace Project_QuangCaoABC
{
    public partial class frmBangGiaQuangCao : Form
    {
        public frmBangGiaQuangCao()
        {
            InitializeComponent();
        }
        #region Chung code
        bool them = false;
        bool update = false;
        Class_DAO.BangGiaDAO thaotac = new Class_DAO.BangGiaDAO();
        private void frmBangGiaQuangCao_Load(object sender, EventArgs e)
        {
            
            dGW_DSBG.ReadOnly = true;

            txtMaLoaiQC.ReadOnly = true;
            txtTenLoai.ReadOnly = true;
            //txtSoLuong.ReadOnly = true;
            txtSizeKyTu.ReadOnly = true;
            txtTrangDang.ReadOnly = true;
            txtTien.ReadOnly = true;
            txtGhiChu.ReadOnly = true;

            HienThiDS_BangGia();

            them = false;
            update = false;
        }
        private void xoatext()
        {
            txtMaLoaiQC.Text = "";
            txtTenLoai.Text = "";
            //txtSoLuong.Text = "";
            txtSizeKyTu.Text = "";
            txtTrangDang.Text = "";
            txtTien.Text = "";
            txtGhiChu.Text = "";
        }
        public void HienThiDS_BangGia()
        {
            dGW_DSBG.DataSource = BangGiaBUS.LoadDS_BangGia();
        }

        private void btnThoat_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void btnThem_Click(object sender, EventArgs e)
        {
            xoatext();
            
            txtTenLoai.ReadOnly = false ;
           // txtSoLuong.ReadOnly = false;
            txtSizeKyTu.ReadOnly = false;
            txtTrangDang.ReadOnly = false;
            txtTien.ReadOnly = false;
            txtGhiChu.ReadOnly = false;

            them = true;
            txtTenLoai.Focus();

            btnLuu.Enabled = true;
            btnSua.Enabled = false;
            btnXoa.Enabled = false;
            btnThem.Enabled = false;
        }

        private void btnSua_Click(object sender, EventArgs e)
        {
            btnLuu.Enabled = true;
            if (dGW_DSBG.SelectedRows.Count <= 0)
            {
                MessageBox.Show("Chưa chọn bảng giá", "Thông báo!", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            else
            {
                txtTenLoai.ReadOnly = false;
                //txtSoLuong.ReadOnly = false;
                txtSizeKyTu.ReadOnly = false;
                txtTrangDang.ReadOnly = false;
                txtTien.ReadOnly = false;
                txtGhiChu.ReadOnly = false;

                btnThem.Enabled = false;
                btnXoa.Enabled = false;
                btnSua.Enabled = false;

                update = true;
            }
        }

        private void btnBoQua_Click(object sender, EventArgs e)
        {
            xoatext();
            btnThem.Enabled = true;
            btnSua.Enabled = true;
            btnXoa.Enabled = true;
            btnLuu.Enabled = true;


            txtTenLoai.ReadOnly = true ;
            //txtSoLuong.ReadOnly = true;
            txtSizeKyTu.ReadOnly = true;
            txtTrangDang.ReadOnly = true;
            txtTien.ReadOnly = true;
            txtGhiChu.ReadOnly = true;
        }

        private void btnLuu_Click(object sender, EventArgs e)
        {
            btnLuu.Enabled = false;
            btnSua.Enabled = true;
            btnThem.Enabled = true;
            btnXoa.Enabled = true;
            try
            {
                if (them) // them
                {                                    
                   string tenloai = txtTenLoai.Text ;
                   //int sl = int.Parse (txtSoLuong.Text) ;
                   int skt = int.Parse (txtSizeKyTu.Text) ;
                   int td =  int.Parse (txtTrangDang.Text) ;
                   float t = float.Parse( txtTien.Text) ;
                   string gc = txtGhiChu.Text ;

                   BangGiaBUS bgBUS = new BangGiaBUS();

                   BangGiaDTO bgDTO = new BangGiaDTO(tenloai, skt, td, t, gc);

                   Class_BUS.BangGiaBUS.ThemBangGia_BUS(bgDTO);
                    HienThiDS_BangGia();
                    them = false;
                    MessageBox.Show("Thêm thành công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return;

                }
                if (update)// sua
                {

                    thaotac.sua(int.Parse(txtMaLoaiQC.Text), txtTenLoai.Text,  int.Parse(txtSizeKyTu.Text), int.Parse(txtTrangDang.Text), float.Parse(txtTien.Text), txtGhiChu.Text);
                    HienThiDS_BangGia();
                    update = false;
                    MessageBox.Show("Thao Tác Thành Công.", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }

            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                return;
            }
        }

        private void btnXoa_Click(object sender, EventArgs e)
        {
            //btnXoa.Enabled = false;
            if (dGW_DSBG.SelectedRows.Count <= 0)
            {
                MessageBox.Show("Chưa chọn khách hàng", "Thông báo!", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            else
            {
                try
                {
                    DialogResult a = MessageBox.Show("Bạn Muốn Xóa Thông Tin Về Khách Hàng Này?", "Cảnh Báo", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
                    if (a == DialogResult.Yes)
                    {
                        thaotac.xoa(int.Parse(txtMaLoaiQC.Text));
                        HienThiDS_BangGia();
                        MessageBox.Show("Thao Tác Thành Công", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        xoatext();
                    }

                }
                catch
                {
                    MessageBox.Show("Không thể xóa mã này", "Thông bao");
                }
            }
        }

        private void dGW_DSBG_SelectionChanged(object sender, EventArgs e)
        {
            if (dGW_DSBG.SelectedRows.Count > 0)
            {

                txtMaLoaiQC.Text = dGW_DSBG.SelectedRows[0].Cells[0].Value.ToString();
                txtTenLoai.Text = dGW_DSBG.SelectedRows[0].Cells[1].Value.ToString();
                //txtSoLuong.Text = dGW_DSBG.SelectedRows[0].Cells[2].Value.ToString();
                txtSizeKyTu.Text = dGW_DSBG.SelectedRows[0].Cells[2].Value.ToString();
                txtTrangDang.Text = dGW_DSBG.SelectedRows[0].Cells[3].Value.ToString();
                txtTien.Text = dGW_DSBG.SelectedRows[0].Cells[4].Value.ToString();
                txtGhiChu.Text = dGW_DSBG.SelectedRows[0].Cells[5].Value.ToString();

            }
        }

        private void btnTimKiem_KH_Click(object sender, EventArgs e)
        {
            if (txtTimMaLoaiQC.Text.Trim() == string.Empty)
            {
                MessageBox.Show("Bạn chưa nhập thông tin", "Thông báo");
            }
            else
            {
                dGW_DSBG.DataSource = BangGiaBUS.getBangGia_theoma(int.Parse(txtTimMaLoaiQC.Text));
            }
        }

        //private void txtSoLuong_KeyPress(object sender, KeyPressEventArgs e)
        //{
        //    if (!Char.IsControl(e.KeyChar) && !Char.IsDigit(e.KeyChar) && e.KeyChar == '.')
        //    {
        //        e.Handled = true;
        //        MessageBox.Show("Bạn phải nhập số chẵn", "Thông báo!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
        //    }
        //    else
        //    {
        //        e.Handled = false;
        //    } 
        //}

        private void txtSizeKyTu_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (!Char.IsControl(e.KeyChar) && !Char.IsDigit(e.KeyChar) && e.KeyChar != '.')
            {
                e.Handled = true;
                MessageBox.Show("Bạn phải nhập số chẵn", "Thông báo!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else
            {
                e.Handled = false;
            } 
        }

        private void txtTrangDang_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (!Char.IsControl(e.KeyChar) && !Char.IsDigit(e.KeyChar) && e.KeyChar != '.')
            {
                e.Handled = true;
                MessageBox.Show("Bạn phải nhập số chẵn", "Thông báo!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else
            {
                e.Handled = false;
            } 
        }

        

        private void txtTien_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (!Char.IsControl(e.KeyChar) && !Char.IsDigit(e.KeyChar) && e.KeyChar != '.')
            {
                e.Handled = true;
                MessageBox.Show("Bạn phải nhập số", "Thông bao!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else
            {
                e.Handled = false;
            } 
        }
        private void txtTimMaLoaiQC_KeyPress(object sender, KeyPressEventArgs e)
        {

            if (!Char.IsControl(e.KeyChar) && !Char.IsDigit(e.KeyChar) && e.KeyChar != '.')
            {
                e.Handled = true;
                MessageBox.Show("Bạn phải nhập số chẵn", "Thông báo!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else
            {
                e.Handled = false;
            }
        }
        
        
       

        
        
        #endregion

       

        

        
    }
    
}
